package ar.edu.utn.frgp.banco.servlets;

import java.util.ArrayList;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import ar.edu.utn.frgp.banco.domain.Cliente;
import ar.edu.utn.frgp.banco.domain.Cuenta;
import ar.edu.utn.frgp.banco.domain.PlazoFijo;
import ar.edu.utn.frgp.banco.service.RecursoServiceCliente;
import ar.edu.utn.frgp.banco.service.RecursoServiceCuenta;
import ar.edu.utn.frgp.banco.service.RecursoServicePlazoFijo;
import ar.edu.utn.frgp.banco.service.impl.RecursoServiceClienteImpl;
import ar.edu.utn.frgp.banco.service.impl.RecursoServiceCuentaImpl;
import ar.edu.utn.frgp.banco.service.impl.RecursoServicePlazoFijoImpl;
import ar.edu.utn.frgp.banco.servlets.scope.CuentaBean;
import ar.edu.utn.frgp.banco.servlets.scope.PlazoFijoBean;

/**
 * Servlet implementation class ServicioVerificarCliente
 */
public class PlazoFijoVerificarClienteRenovarServlet extends GenericServlet {
	private static final long serialVersionUID = 1L;

    /**
     * Default constructor. 
     */
    public PlazoFijoVerificarClienteRenovarServlet() {
        // TODO Auto-generated constructor stub
    }

	@Override
	public void realizarAccion(HttpServletRequest req, HttpServletResponse resp) throws Exception {
		
		
	   String dni = (String)req.getParameter("txtDNI");
	   Cliente cliente = new Cliente();
	   cliente.setDni(Integer.parseInt(dni));
	   
	   RecursoServiceCliente recursocliente = new RecursoServiceClienteImpl();
	   RecursoServiceCuenta serviceCuenta = new RecursoServiceCuentaImpl();
	   
	   HttpSession sesion = req.getSession();
	   	
	  
			 cliente=recursocliente.existeClienteTraer(cliente);
			 sesion.setAttribute("cliente", cliente);
			 
			 RecursoServicePlazoFijo recursoplazofijo= new RecursoServicePlazoFijoImpl();
			 List<PlazoFijo> ListadoPlazoFijo = recursoplazofijo.listarPlazosFijosCliente(Integer.parseInt(req.getParameter("txtDNI")),1);
			 
			 PlazoFijoBean beanplazofijo = new PlazoFijoBean();
			 beanplazofijo.setPlazosfijos(ListadoPlazoFijo);
			 req.setAttribute("beanplazofijo", beanplazofijo);
			 
			 List<Cuenta> cuentas = new ArrayList<Cuenta>();		
			 cuentas = serviceCuenta.listarCuentasActivas(cliente.getDni());
					
			 CuentaBean beancuenta = new CuentaBean();
			 beancuenta.setCuentas(cuentas);
					
			 req.setAttribute("beancuenta", beancuenta);
				
			 req.getRequestDispatcher("plazofijorenovar.jsp").forward(req, resp);
				 
	}		 	
}


